home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 43 / Amiga Format CD43 (1999)(Future Publishing)(GB)(Track 1 of 2)[!][issue 1999-09].iso / -serious- / comms / other / ambos-cgi / aws / readme-2.0b5 < prev    next >
Text File  |  1999-06-14  |  4KB  |  85 lines

  1. See the file README for changes from 1.0 betas prior to beta 05. This file
  2. documents changes from beta04 to beta05.
  3.  
  4. First, and most noticably, the log file format has changed. There is
  5. now ONE logfile, which is set by the "logfile" command in the server
  6. config file. The default is "t:aws-NAME.log" (for aserve, it's
  7. "t:aserve-NAME.log") where NAME is the Rexx name for the server.
  8.  
  9. The format is defined by an internet draft on "extensible log file
  10. formats". Lines have two flavors: those starting with "#" are
  11. meta-information about the log file: the software that produced it
  12. (#Software); the start and end date (#Start-Date and #End-Date); the
  13. version of the format (#Version), the list of fields in the data lines
  14. (#Fields), remarks (#Remark) or date stamps (#Date). Most of them are
  15. pretty obvious, except that Fields lists the list of fields, which
  16. looks like:
  17.  
  18. #Fields: date time c-dns s-dns cs-method cs-URI sc-status sc-bytes cs(referer) cs(user-agent) cs(accept)
  19.  
  20. That's the date (year-mm-dd), time (local, no TZ - yeah!), client
  21. hostname or IP, server hostname or ip and ':portnumber' (so you can
  22. sort out requests from different servers if they are going to the same
  23. log file), the method (GET, POST, HEAD); the URI on that server, the
  24. status of the request, and the number of bytes sent back. These are
  25. all space-delimited words. The remaining fields are double-quoted,
  26. with double-quotes in the field being duplicated: "This field has a ""
  27. in it". They are the contents of the HTTP referer header; the contents
  28. of the HTTP User-Agent header, and the FIRST Accept header. The Accept
  29. header is not technically correct, and will not be in the release
  30. version (assuming it's in beta 5, which is not a given at this point).
  31.  
  32. BTW, THIS FORMAT IS SUBJECT TO CHANGE. It'll probably be minor:
  33. ","-seperated instead of space-seperated; dropping the ":" in
  34. directives; some name changes in the #Fields directive. I have little
  35. control over this, but am participating in that wg.
  36.  
  37. The other usage change is a new startup argument, "timeout" that lets
  38. you set how long to delay before timing out a request. Be very
  39. carefull with this, it can drastically effect memory usage on loaded
  40. sites.
  41.  
  42. Oh yeah - minutesoff now matches the documentation, and is minutes
  43. instead of hours!
  44.  
  45. The other important change is that redirects - all redirects, not just
  46. CGI redirects - now match CGI usage: if the redirect starts with a
  47. "/", it will be handled internally. If it doesn't, it will be assumed
  48. to be a complete absolute URL, and will be handed to the client as is.
  49.  
  50. This means that if you were doing:
  51.  
  52.     map /foo/ redirect /bar/
  53.  
  54. and /bar/ had relative links, you'll have to change it to:
  55.  
  56.     map /foo/ redirect http://myhost/bar/
  57.  
  58. to tell the client about it.
  59.  
  60. On the other hand, if you are doing redirects that DO NOT point at
  61. pages with relative links, you won't have to change anything, and the
  62. user will get quicker service and you'll see lower server load.
  63.  
  64. Bundled along with this change, the CGI module now supports
  65. PATH_TRANSLATED. The caveats discussed about it all apply: it isn't
  66. reliable. In particular, if the file that PATH_TRANSLATED should refer
  67. to doesn't exist, PATH_TRANSLATED will be set to the empty string.
  68.  
  69. On the AServe side, index can now contain a new facility: "Alias".
  70. This allows you to send a DIFFERENT file than the one named, along
  71. with a different content type. I'm already using this on the ngmap
  72. pages, like so:
  73.  
  74.     File: map.html
  75.  
  76.     File: map.text
  77.     Alias: map.html
  78.     Content-type: text/plain
  79.  
  80. A reference to map.html will get the text/html file map.html. A
  81. reference to map.text in that same directory will get the same file,
  82. but with a content-type of text/plain. Yes, you can grab arbitrary
  83. files from anywhere on your server to serve to people. This has
  84. non-obvious security applications; be carefull with it!
  85.